home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HPAVC
/
HPAVC CD-ROM.iso
/
CRYPT20.ZIP
/
DECODE.ASM
< prev
next >
Wrap
Assembly Source File
|
1993-11-07
|
2KB
|
95 lines
.model tiny
.radix 16
.code
org 100
start:
OpenPicture:
mov ah,3c
xor cx,cx
mov dx,offset Destfile
int 21
jc erroropen
mov Destination,ax
mov ax,3d00
mov dx,offset filename
int 21
jc erroropen
xchg bx,ax
GoToPictureData:
mov ax,4200
mov dx,300
xor cx,cx
int 21
NotherLoop:
mov dx,offset ReadBuf
mov cx,200
mov ah,3f
int 21
push bx ax
call Decoder
pop ax bx
cmp ax,200
je NotherLoop
CloseFile:
mov ah,3e
int 21
mov ah,3e
mov bx,destination
int 21
Terminate:
mov ax,4c00
int 21
ErrorOpen:
mov ah,09
mov dx,offset error
int 21
mov ax,4c01
int 21
Decoder:
mov si,offset ReadBuf
mov di,offset WriteBuf
mov cx,40
DecodeIt:
push cx
call GetByte
pop cx
mov al,workbyte
stosb
loop DecodeIt
mov dx,offset WriteBuf
mov bx,Destination
mov cx,40
mov ah,40
int 21
ret
GetByte:
mov workbyte,0
mov cx,8
GetBits:
lodsb
shr al,1
rcr workbyte,1
loop GetBits
ret
workbyte db 0
error db 'Error opening files.$'
filename db 'message.scr',0
destfile db 'newmess.dat',0
destination dw ?
ReadBuf db 200 dup(?)
WriteBuf db 40 dup(?)
end start